(1) Field of the Invention
The present invention relates to a method for transferring print data to a printer device, and particularly to a pull-type print mode in which the printer device requests a supplier of print data to supply the print data.
(2) Description of the Prior Art
An attempt has been made to connect a printer device to AV (Audio Visual) devices such as a digital camera and a digital broadcast receiver (STB: Set Top Box) and to print video taken and received by the AV devices directly in the printer device. However, the AV devices such as STB, being different from a personal computer, are not generally equipped with an auxiliary mass storage device such as a hard disk drive and a CD-ROM drive, and the devices that have the function to update their own firmware are few in number. Therefore, it is desirable to avoid installing different driver software for each model of the printer device to be connected. Consequently, a flexible connection mode is desirable, in which it is possible to connect freely-selected AV devices and the printer device and print without installing the device-specific software if the device conforms to a specific standard.
As a measure to respond to this demand, there is AV/C Digital Interface Command Set (AV/C Protocol) defined by the 1394 Trade Association (TA). AV/C Protocol decides the minimum standard protocol for the connection of AV devices, maintains compatibility between the AV devices, and provides a framework in which each maker can individually improve the performance of the devices. Moreover, out of AV/C Protocol, there is AV/C Printer Subunit that defines AV/C commands particularly relating to the printer device. As to the details of the AV/C Printer Subunit, see “TA Document 1999038 AV/C Printer Subunit Specification 1.0” which is available at “http://www.1394TA.org”.
FIG. 1 is a sequence diagram that shows an example of communication procedure when an AV device such as a digital camera outputs an image for printing in the printer device following existing AV/C Printer Subunit. Here, FIG. 1 shows communication sequence when a controller 900 connected by an IEEE1394 bus outputs a print object such as an image held inside the controller 900 to a printer unit (printer device) 910, and the commands and responses at that time.
For a start, after the controller 900 acquires version information from the printer unit 910, creates a print job specified with a job identifier “job_ID” in the printer unit 910, and then establishes a logical transfer channel (asynchronous data transfer connection; Asynchronous Connection).
Then, the controller 900 specifies the print object that the controller 900 wants to output by sending an AV/C command CAPTURE to the printer unit 910, and the controller 900 outputs (pushes) the specified print object to the printer unit 910 through the transfer channel.
After the printing has completed and the printer unit 910 returns the completion status ACCEPTED response to the controller 900, which disconnects the transfer channel Asynchronous Connection and polls the job status in the printer unit 910 after closing the print job.
By this means, the output of the print object from the AV device to the printer device according to AV/C Printer Subunit enables the printer device to print the print object without installing individual driver software.
However, the print command CAPTURE in above-mentioned AV/C Printer Subunit is issued based on the push-type print mode (Push Print) in which after issuing that print command, the controller outputs the print object held by the controller itself to the printer device, and is not applicable to the pull-type print mode (Pull Print) in which the printer device itself captures a necessary print object from a necessary location (i.e., executes printing based on the data acquisition request from the printer device).
Therefore, as for the print object consisting of a plurality of files which are linked to each other, such as a print object described by HTML (Hyper Text Markup Language), the printer device requires a mass storage buffer for storing the print object for 1 page due to the need of transferring the print object per page. That is a problem.
There is another problem that the processing load on the controller is heavy because it needs to control the output of the print object to the printer device so as to output it depending upon the printing progress in the printer device under its monitoring.
There is still another problem. Since the controller is based on the system configuration that the controller outputs the print object held by the controller itself to the printer device, it is difficult for the controller to perform print processing in compliance with different system configurations other than the basic configuration, in which the controller has the print object stored in another location than the controller (an independent print object supply device) printed.
Problems specific to the IEEE1394 standard are as follows. A printing technology using AV/C Printer Subunit defined by IEEE1394 has been proposed, but it supports only the push-type print mode for printing the image data, in which the print object supply device transfers the print object to the printer device. Therefore, in order to print the data described in a link file format like HTML, there is no other method but transferring the data after generating in advance one image data in the print object supply device, which requires a lot of processing capabilities and memory resources of the print object supply device.
On the other hand, a pull-type print mode using an XHTML-Print format has been proposed as a technique used for Bluetooth and so on. According to this technique, the printer device can request the print object supply device to send a linked print object from whenever necessary while analyzing link path lo information that uniquely specifies the location of the file of the print object, which can reduce the load on the printer device and the print object supply device. However, this technique has a disadvantage that it is difficult to introduce this technique into IEEE1394 for the existing AV/C Printer Subunit alone due to a difference of design concept.
Meanwhile, there is an approach of extending the existing AV/C Printer Subunit by adding a new AV/C command so as to realize the pull-type print mode. However, this is a problem that such an approach causes a modification of the well-known protocol, which confuses engineers in the area of IEEE1394.